iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 24
0
自我挑戰組

第12 屆IT鐵人賽 -Python新手玩玩Web應用系列 第 24

{Day24}Templates@Django

  • 分享至 

  • xImage
  •  

MTV-Templages

昨天講了M,今天來聊T Templates吧⋯⋯

Django 的Templates 也和Flask 類似用{{ }} {% %}的語法,對應不同的操作功能

{{ variable }} 設定變數內容,並且套用到網頁上,例如
My first name is {{ first_name }}. My last name is {{ last_name }}.
在網頁的設定接收到以下這樣的資料時, {'first_name': 'John', 'last_name': 'Doe'},
就會把first_name和last_name 二個變數值的value傳遞到所對應用變數內。最後輸出像
My first name is John. My last name is Doe.
此外來源如果是dict list 或是一個物件的屬性時加上.可做為查找資料的方式
{{ my_dict.key }}:用dict key 找value
{{ my_object.attribute }}:使用物件的屬性
{{ my_list.0 }}:使用list索引值,找對應的資料

{% tag %}
用在渲染對應用html 讓設計者不用每次每次都要輸入相同的html tag.
同時也可以使for 迴圈重複顯示某些資料。
官方範例如下

{% extends "base_generic.html" %}

{% block title %}{{ section.title }}{% endblock %}

{% block content %}
<h1>{{ section.title }}</h1>

{% for story in story_list %}
<h2>
  <a href="{{ story.get_absolute_url }}">
    {{ story.headline|upper }}
  </a>
</h2>
<p>{{ story.tease|truncatewords:"100" }}</p>
{% endfor %}
{% endblock %}

filters
對應變數顯示的時候我們可以運用這個功能達成格式化顯示的目的。

Day24 只剩六天


上一篇
{Day22}Models @Django
下一篇
{Day25}VIEWS @Django
系列文
第12 屆IT鐵人賽 -Python新手玩玩Web應用30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言